package main

import (
	"fmt"
	"io"
	"os"
)

func main() {
	Copy2("1.jpg", "12.jpg")
}

// 调用系统的方法
func Copy2(source, destination string) {
	// 读取文件
	sourceFile, err := os.Open(source)
	if err != nil {
		fmt.Println("Open错误:", err)
	}
	// 输出文件 O_WRONLY , O_CREATE 如果不不存在，则会创建
	destinationFile, err := os.OpenFile(destination, os.O_WRONLY|os.O_CREATE, os.ModePerm)
	if err != nil {
		fmt.Println("OpenFile错误:", err)
	}
	// 关闭
	defer sourceFile.Close()
	defer destinationFile.Close()

	// 具体的实现
	written, err := io.Copy(destinationFile, sourceFile)
	fmt.Println("文件的字节大小:", written)
}
